﻿@model IEnumerable<Unijovem.UI.Models.CampoPerfilModel>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.maskedinput-1.3.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.extensions.js")" type="text/javascript"></script>
<script type="text/javascript">
    $(function () {
        $("#buttonSubmit").corner('round 15px');

        $("#buttonSubmit").click(function () {
            var passou = true;
            $('span.field-validation-valid').each(function () {
                if ($(this).is(':visible')) passou = false;
            });

            if (passou == true) {
                $("form").submit();
                alert('Salvo com sucesso');
            }
        });
    });
</script>
@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>Campo Perfil</legend>
        @{bool usuarioLogado = false;
          foreach (var grupo in Model.Where(g => g.IdGrupo == null))
          {
            <div class="borderVermelha forumDetalhesOver bordaArredondada" style="margin-bottom: 10px;"
                id="divExternaForum">
                <div class="fonteDestaque" style="padding: 5px">@grupo.Nome</div>
                <div style="padding: 10px; color: #696969; cursor: default;" class="divTexto borderVermelha bordaArredondada">
                    @foreach (var campo in Model.Where(c => c.IdGrupo == grupo.Id))
                    {
                        <div class="editor-label">
                            @campo.Nome
                        </div>
                        <div class="editor-field">
                            @if (campo.UsuarioLogado)
                            {
                                usuarioLogado = true;
                                switch (campo.TipoControle)
                                {
                                    case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.TextBox:
                                @Html.TextBox(string.Concat("Input", campo.Id), campo.Perfil != null ? campo.Perfil.Valor : null, new { maxlength = campo.MaxLenght == 0 ? 1024 : campo.MaxLenght })
                           break;
                                    case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.CheckBox:
                                @Html.CheckBox(string.Concat("Input", campo.Id), campo.Perfil != null ? bool.Parse(campo.Perfil.Valor) : false)
                           break;
                                    case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.DropDownList:
                                @Html.DropDownList(string.Concat("Input", campo.Id), campo.ValorCampoPerfils.OrderBy(v => v.Valor).ToSelectList(g => g.Valor, g => g.Id.ToString(), string.Empty, campo.Perfil != null ? campo.Perfil.Valor : null))
                           break;
                                    case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.RadioButton:
                                @Html.RadioButton(string.Concat("Input", campo.Id), campo.Perfil != null ? bool.Parse(campo.Perfil.Valor) : false) 
                           break;
                                    case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.TextArea:
                                @Html.TextArea(string.Concat("Input", campo.Id), campo.Perfil != null ? campo.Perfil.Valor : null, campo.MaxLenght == 0 ? 18 : campo.MaxLenght / 60, 60, new { maxlength = campo.MaxLenght == 0 ? 1024 : campo.MaxLenght })
                           break;
                                }

                                if (campo.Tipo == Unijovem.UI.Models.CampoPerfilModel.TipoDados.Data)
                                {
                                <span data-valmsg-for="@string.Concat("Input", campo.Id)" class="field-validation-valid" >
                                </span>
                                <script type="text/javascript">
                                    $(function () {
                                        var input = $('#@string.Concat("Input", campo.Id)');
                                        input.mascaraData();
                                        input.focusout(function () {
                                            if (input.val() != '') input.validarData();
                                        });
                                    });
                                </script>
                                }
                            }
                            else
                            {
                                if (campo.Perfil == null || string.IsNullOrEmpty(campo.Perfil.Valor) || string.IsNullOrWhiteSpace(campo.Perfil.Valor))
                                { 
                                <span>Não preenchido</span>   
                                }
                                else
                                {
                                    try
                                    {
                                        switch (campo.TipoControle)
                                        {
                                            case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.CheckBox:
                                <span>@(campo.Perfil.Valor.ToLower() == "true" ? "Sim" : "Não")</span>
                                  break;
                                            case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.DropDownList:
                                <span>@campo.ValorCampoPerfils.First(v => v.Id == int.Parse(campo.Perfil.Valor)).Valor</span>
                                 break;
                                            case Unijovem.UI.Models.CampoPerfilModel.TipoControleHtml.RadioButton:
                                <span>Não preenchido</span>
                                 break;
                                            default:
                                <span>@campo.Perfil.Valor</span>
                                 break;
                                        }
                                    }
                                    catch
                                    {
                                <span>Não preenchido</span>
                                    }
                                }
                            }
                        </div>
            
                    }
                </div>
            </div>
          }

          if (usuarioLogado)
          {
            <p>
                <a id="buttonSubmit" class="botaoVermelho bordaRedonda">Salvar</a>
            </p>
          }
        }
    </fieldset>
}
<div>
</div>
